package com.yeyks.service;

import com.yeyks.dal.domain.CouponInfo;

import java.util.List;
import java.util.Map;

/**
 * @Author fuchangshuai
 * @date 2019/2/28 1:23 PM
 */
public interface CouponInfoService {

    /**
     * 通过券id和用户id查询有效的券
     *
     * @param id
     * @param used 是否被使用
     * @param valid 是否有效
     * @param couponId 券id
     * @return
     */
    List<Map> selectByUser(Integer id, Boolean used, Boolean valid, Integer couponId);

    /**
     * 获取充值10元得到的50元的券
     *
     * @param payAmount
     * @return
     */
    CouponInfo selectCouponByPayAmount(Integer payAmount);

    /**
     * 通过优惠券id获取优惠券
     *
     * @param couponId
     * @return
     */
    CouponInfo selectByCouponId(Integer couponId);

    /**
     * 获取需要发放的随机券
     *
     * @param param
     * @return
     */
    List<CouponInfo> randomCoupon(Map<String, Object> param);

    /**
     * 是否有推广所用的优惠券
     *
     * @return
     */
    Boolean recommendExist();
}
